home *** CD-ROM | disk | FTP | other *** search
- .MODEL SMALL
-
- INCLUDE equates.inc
- INCLUDE instance.inc
- INCLUDE messages.inc
- INCLUDE objects.inc
-
- IF1
- INCLUDE macros.mac
- INCLUDE objects.mac
- INCLUDE video.mac
- ENDIF
-
- EXTRN hideMouseCursor:NEAR
- EXTRN prtString:NEAR
- EXTRN sendMsg:NEAR
-
- EXTRN DlgMenu:WORD
- EXTRN Mouse:WORD
- EXTRN PopUp:WORD
- EXTRN Self:WORD
- EXTRN SBorder:WORD
- EXTRN Shadow:WORD
-
- .CODE
-
- IF Dbug
- PUBLIC disDlgText
- ENDIF
- COMMENT %
- ==============================================================================
- Displays a dialog's text message.
-
- =============================================================================%
- disDlgText PROC NEAR
- getInst dh,Row1,Self ;Get upper row
- getInst dl,Col1 ;Get left column
- getInst bl,Color ;Get color
- getInst si,TxtPtr ;Get text ptr
-
- add dh,RowOffset ;Add in row offset
- add dl,ColOffset ;Add in column offset
- add dl,ColOffset ;Add in column offset
-
- call prtString ;Display the string
- ret
- disDlgText ENDP
-
-
-
- IF Dbug
- PUBLIC clickOnItem
- ENDIF
- COMMENT %
- ==============================================================================
- Selects the menu item based on mouse location.
-
- =============================================================================%
- clickOnItem PROC NEAR
- getInst bl,Col1,Mouse ;Get mouse column
- getInst si,MenuPtr,Self ;Get menu ptr
- xor ax,ax ;Initialize item counter
-
- coi1: mov dl,Bptr[si] ;Get col for current item
- mov dh,Bptr[si+MenuEntrySize] ;Get col for next item
- lessThan bl,dl,coi4 ;Exit if before item
- lessThan bl,dh,coi3 ;Done if before next item
- inc ax ;Increment item count
- add si,MenuEntrySize ;Point to next entry
- identity Wptr[si],coi1,coi4 ;Loop if more items
- ;Else exit
-
- coi3: push Self
- mov cl,MenuEntrySize ;Get entry size
- mul cl ;Calc entry offset
- send DlgMenu,Flash,ax ;Hilite menu item
- pop Self
-
- send Self,Select ;Select menu item
- coi4: ret
- clickOnItem ENDP
-
-
-
- .DATA
-
- defMsg Dialog,\
- Refresh,\
- <hideMouseCursor,,disDlgText>
-
- defMsg Dialog,\
- Click,\
- <,,clickOnItem>
-
- defObj Dialog,\
- <Shadow,PopUp,SBorder>,\
- <>,\
- <Refresh,Clear,Click>
-
-
-
- END
-